package com.ww.grtsmanager.mapper;

import com.ww.grtsmanager.bean.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;

@Mapper
public interface UserMapper {
    /**
     * 根据用户名查询用户对象（用户昵称、用户密码、用户头像、用户id）
     *
     * @param userName 用户名
     * @return 返回用户对象或null
     */
    User getUserByUserName(String userName);

    /**
     * 添加用户到数据库中
     *
     * @param user 用户对象
     * @return 大于0表示成功 等于0表示失败
     */
    int addUser(User user);

    /**
     * 根据邮箱查询用户信息
     *
     * @param data 邮箱
     * @return 用户对象
     */
    User getUserByEmail(String data);

    /**
     * 根据邮箱修改用户密码
     *
     * @param passWord    加密以后的密码
     * @param email       用户邮箱
     * @param gmtModified 修改日期
     * @return 大于0表示成功 等于0表示失败
     */
    int updateUserByEmail(@Param("passWord") String passWord, @Param("email") String email, @Param("gmtModified") Date gmtModified);
}
